﻿using DFGK_WMS.Model.Enum;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DFGK_WMS.Model.Dto
{
    public class WcsTaskDto
    { 
        /// <summary>
      /// 上架/下架单子
      /// </summary>
        public string TaskCode { get; set; }
        /// <summary>
        /// 任务类型 1入库2出库3移库 不可空
        /// </summary>
        public int TaskType { get; set; }
        /// <summary>
        /// 仓位
        /// </summary>
        public string CellCode { get; set; }
        /// <summary>
        ///AGV起点 只有在入库切需要AGV时 如果不传值WCS视为人工放到了入库口不会去调用AGV
        /// </summary>
        public string AgvStartCode { get; set; }
        /// <summary>
        /// 是否包膜打带 1是  入库时不可空
        /// </summary>
        public int Capsule { get; set; }
        /// <summary>
        /// 子托盘
        /// </summary>
        public string StackCode { get; set; }

        public string StartPoint { get; set; }

        public string EndPoint { get; set; }

        public string PalletCode { get; set; }

        
        public string StockCode { get; set; }

        public decimal? Qty { get; set; }

        /// <summary>
        /// 站台
        /// </summary>
        public EmStation Station { get; set; }

        /// <summary>
        /// 入库时为终点
        /// 出库时为起点
        /// 层
        /// </summary>
        public int Level { get; set; }

        /// <summary>
        /// 巷
        /// 入库时为终点
        /// 出库时为起点
        /// </summary>
        public int Tunnel { get; set; }

        /// <summary>
        /// 列
        /// 入库时为终点
        /// 出库时为起点
        /// </summary>
        public int Bay { get; set; }

        /// <summary>
        /// 排
        /// 入库时为终点
        /// 出库时为起点
        /// </summary>
        public int Row { get; set; }

        /// <summary>
        /// 结束层
        /// </summary>
        public byte ToLevel { get; set; }

        /// <summary>
        /// 结束巷
        /// </summary>
        public byte ToTunnel { get; set; }

        /// <summary>
        /// 结束列
        /// </summary>
        public byte ToBay { get; set; }

        /// <summary>
        /// 结束排
        /// </summary>
        public byte ToRow { get; set; }
    }

    public class WcsTranTaskDto
    {
        /// <summary>
        /// 任务号
        /// </summary>
        public string TaskCode { get; set; }

        /// <summary>
        /// 起始层
        /// </summary>
        public int FromLevel { get; set; }

        /// <summary>
        /// 起始巷
        /// </summary>
        public int FromTunnel { get; set; }

        /// <summary>
        /// 起始列
        /// </summary>
        public int FromBay { get; set; }

        /// <summary>
        /// 起始排
        /// </summary>
        public int FromRow { get; set; }

        /// <summary>
        /// 结束层
        /// </summary>
        public int ToLevel { get; set; }

        /// <summary>
        /// 结束巷
        /// </summary>
        public int ToTunnel { get; set; }

        /// <summary>
        /// 结束列
        /// </summary>
        public int ToBay { get; set; }

        /// <summary>
        /// 结束排
        /// </summary>
        public int ToRow { get; set; }

        public string PalletCode { get; set; }
    }
}
